package com.sikaryofficial.qrcode.service;

import com.anwen.mongo.service.IService;
import com.sikaryofficial.qrcode.domain.mongo.ProductQrMongo;
import com.sikaryofficial.system.api.domain.ProductQr;

import java.util.List;

/**
 * @author JiaChaoYang
 * @project mongo-plus-demo
 * @description
 * @date 2023-07-18 22:27
 **/
public interface ProductQrMongoService extends IService<ProductQrMongo> {

    Boolean insertBatch(List<ProductQrMongo> data);

    /**
     * 判断用户是否扫码获取产品100积分
     *
     * @param param
     * @return
     */
    Boolean existProductQrCode(String param);

    /**
     * 判断用户是否扫码获取产品100积分
     *
     * @param param
     * @return
     */
    Boolean verifyScanCode(String param);

    /**
     * 更新产品二维码数据
     *
     * @param param
     */
    boolean updateProductQrData(String param);

    /**
     * 根据参数查询二维码数据
     *
     * @param param
     * @return
     */
    ProductQr getProductQr(String param);


    /**
     * 查询当前产品对应的所有扫码次数
     *
     * @param brandTasteId
     * @return
     */
    long countScanCodeNumById(Long brandTasteId);

    long countDocument();

}
